package ar.uba.fi.taller2.ftrs.WebService;

public class ClienteB23 {

	public static void main(String[] args) {
		ParserStub stub;
		try{
			// Establezco conexion con el ws
			stub= new ParserStub("http://localhost:8080/axis2/services/wsTree");
			// Creo Arboles
			String id=null;
			Integer idInt=0;
			ParserStub.Crear arbolB23 = new ParserStub.Crear();
			arbolB23.setTipo("B23");
			arbolB23.setOrder(4);
			ParserStub.CrearResponse arbolB23Resp = stub.crear(arbolB23);
			id=arbolB23Resp.get_return();
			idInt = Integer.parseInt(id);
			if(idInt > 0){
				System.out.println("El Arbol "+arbolB23.getTipo()+" id:"+id+" Fue creado\n");
			}else{
				System.out.println("Error al generar el Arbol");
			}
				
			
			// Agrego nodos al Arbol
			ParserStub.Agregar nodob = new ParserStub.Agregar();
			nodob.setClave("50");
			nodob.setId(id);
			ParserStub.AgregarResponse nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return());
			
			nodob.setClave("60");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return());
			
			nodob.setClave("70");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return());
			
			nodob.setClave("80");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return()+"\n");
			
			ParserStub.Imprimir imprimir = new ParserStub.Imprimir();
			imprimir.setId(id);
			ParserStub.ImprimirResponse imprimirResp = stub.imprimir(imprimir);
			System.out.println(imprimirResp.get_return()+"\n");
			
			nodob.setClave("90");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return()+"\n");
			
			imprimirResp = stub.imprimir(imprimir);
			System.out.println(imprimirResp.get_return());
			
			nodob.setClave("10");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return());
			
			nodob.setClave("20");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return());
			
			nodob.setClave("30");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return()+"\n");
			
			imprimirResp = stub.imprimir(imprimir);
			System.out.println(imprimirResp.get_return()+"\n");
			
			nodob.setClave("40");
			nodob.setId(id);
			nodobResp = stub.agregar(nodob);
			System.out.println(nodobResp.get_return()+"\n");
			System.out.println("## ARBOL RESULTANTE"+"\n");
			imprimirResp = stub.imprimir(imprimir);
			System.out.println(imprimirResp.get_return()+"\n");
			
			System.out.println("## ELIMINO NODOS"+"\n");
			ParserStub.Quitar borrar = new ParserStub.Quitar();
			borrar.setClave("10");
			borrar.setId(id);
			ParserStub.QuitarResponse borrarResp = stub.quitar(borrar);
			System.out.println(borrarResp.get_return()+"\n");
			
			imprimirResp = stub.imprimir(imprimir);
			System.out.println(imprimirResp.get_return());
						
			
			
		}catch (Exception e){
			 e.printStackTrace();
		}
		
		
	}

}
